package net.dgg.rz.common.dao;


import net.dgg.rz.common.entity.OrderProductVo;
import net.dgg.rz.common.entity.Product;
import org.springframework.stereotype.Component;

import java.util.List;
import java.util.Map;

@Component
public interface ProductDao {
    int deleteByPrimaryKey(Long id);

    /**
     * iboos插入订单jie
     *
     * @param product
     * @return
     */
    int iboosInsertSelective(Product record);

    int insertSelective(Product product);

    Product selectByPrimaryKey(Long id);

    int updateByPrimaryKeySelective(Product record);

    int updateByPrimaryKey(Product record);

    /**
     * 根据指定条件查询产品信息（分页）
     *
     * @param params
     * @return
     */
    List<OrderProductVo> queryOrderProductVoWithPage(Map params);

    /**
     * 根据指定条件查询产品信息
     *
     * @param params
     * @return
     */
    List<OrderProductVo> queryOrderProductVo(Map params);

    /**
     * <p>@Description 根据生产订单id查销售子订单</p>
     * <p>@author mqy</p>
     * <p>@Time 2018/8/20 0020 11:49 创建时间</p>
     * <p>@return</p>
     */
    Map queryProductByProductOrderId(String productOrderId);

    /**
     * 根据销售子订单id查询
     *
     * @param map
     * @return
     */
    Product findProductByOrderId(Map map);

    List<Map> selectProductByLeadingIn(Map map);
}